High-availability clusters (also known as HA clusters or fail over clusters) are groups of computers that support server applications that can be reliably utilized with a minimum of down-time. They operate by using high availability software to harness redundant computers in groups or clusters that provide continued service when system components fail. Without clustering, if a server running a particular application crashes, the application will be unavailable until the crashed server is fixed. HA clustering remedies this situation by detecting hardware faults, software faults, or both and immediately restarting the application on another redundant system without requiring administrative intervention, a process known as failover.
There still exists, however, a need to perform backups in a high availability environment because backups provide other benefits. For example, backups can allow for rollbacks to older points in time, remote data storage, archiving, and other benefits.
A problem with prior approaches to backing up high-availability systems is the inability to configure backup preferences and have backups proceed in parallel. Depending upon factors such as the amount of data to backup and other factors, backups can take a significant amount of time and computing resources. In some cases a user may desire to have backups proceed on one or more redundant computers in the high-availability cluster rather than on the server actively responding to client requests.
Therefore, there is a need for improved systems and techniques that allow for parallel backups and the offloading of backups to redundant computers in a high-availability cluster.